Skip to content

feat(#512): add epoch-fenced connection lifecycle - #523

Merged
BorisTyshkevich merged 4 commits into
mainfrom
feat/connection-lifecycle-512p1
Jul 28, 2026
Merged

feat(#512): add epoch-fenced connection lifecycle#523
BorisTyshkevich merged 4 commits into
mainfrom
feat/connection-lifecycle-512p1

Conversation

@BorisTyshkevich

@BorisTyshkevich BorisTyshkevich commented Jul 28, 2026

Copy link
Copy Markdown
Collaborator

Summary

Phase 1 of #512 establishes one authoritative connection lifecycle before the
application-shell suspension work begins.

Review notes

The architecture review found and this branch fixes:

  • racing Basic probes overwriting a newer successful login
  • stale OAuth preparation redirecting after a newer credential flow
  • stale auth-loss settlement clearing a replacement credential epoch
  • transport evidence arriving while token refresh is still in flight
  • narrow-screen CSS hiding the authoritative connection state

The architecture gate now mechanically rejects serverVersion readiness
inference in lifecycle/transport/header authority modules and makes
connection-chip projection exclusive to the lifecycle projector/header. The
mounted DOM contract covers all seven lifecycle states.

The lifecycle and execution boundary are deliberately separate. This PR does
not yet preserve the mounted workbench after auth loss; that is the next phase.

Verification

  • npm test — 188 files, 6,175 tests; 100% statements/lines
  • npm run check:arch
  • npm run check:types
  • npm run build

Part of #512

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant